#ifndef __VECTORPIEZAS_H
#define __VECTORPIEZAS_H
#include "pieza.h"

/**
@brief Contiene todas las piezas posibles en el juego
*/
class VectorPiezas{

	private:
		/**
		@brief Vector de piezas
		*/
		Pieza *p;
		/**
		@brief Tamaño del vector de piezas
		*/
		int tam;
		
	public:
		/**
     		@brief Constructor por defecto
  		*/
		VectorPiezas();
		/**
    	 	@brief Constructor por valor
   		*/
		VectorPiezas(int tam);
		/**
     		@brief Constructor de copia
   		*/
		VectorPiezas(const VectorPiezas &vp);
		/**
     		@brief Devuelve el tamaño del vector
    		@return Número total de elementos en el vector
   		*/
		int Tama() const;
		/**
   	  	@brief Redimensiona el vector a un tamaño pasado por argumento
    		@param tam Tamaño al que se redimensiona el vector
   		*/
		void SetTama(int tam);
		/**
   	  	@brief Operador de indexación
   	  	@param i Índice del vector
   		*/
		Pieza& operator[](int i)const;
		/**
   	  	@brief Operador de asignación
   		*/
		VectorPiezas& operator=(const VectorPiezas& vp); 
		/**
   	  	@brief Destructor
   		*/
		~VectorPiezas();


};



#endif
